#导入pymysql模块
import pymysql
#定义学生信息表操作的类
class stuinfo:

	def __init__(self):
		#获取数据库连接
		self.db=pymysql.connect(host="localhost",user="root",password="",db="studb",charset="utf8")
		#创建游标对象
		self.cursor=self.db.cursor()

	#定义学生信息查询函数
	def findAll(self):
		sql="select * from stu"
		try:
			self.cursor.execute(sql)
			
			while True:
				data=self.cursor.fetchone()
				if data==None:
					break;

				print(data)

		except:
			print("sql执行错误！")

	#定义添加学员信息函数
	def insert(self,name,age,classid):
		self.name=name
		self.age=age
		self.classid=classid
		#定义sql语句
		sql="insert into stu (name,age,classid) values('%s','%s','%s')"%(self.name,self.age,self.classid)

		try:
			self.cursor.execute(sql)
			self.db.commit()

		except:
			self.db.rollback()
			print("sql执行错误！")


	def delete(self,id):

		self.id=id
		#定义sql操作
		sql="delete from stu where id=%s"%(self.id)
		try:
			#执行sql操作
			self.cursor.execute(sql)
			#事务提交
			self.db.commit()

		except:
			self.db.rollback()
			print("sql执行错误！")

	def __del__(self):
		self.db.close()

stuinfo=stuinfo()

#学生信息管理系统输出界面

while True:
	print("="*40)
	print("{0:5}{1:10}{2:15}".format(" ","1.学生信息查询","2.学生信息添加"))
	print("{0:5}{1:10}{2:15}".format(" ","3.学生信息删除","4.学生信息退出"))

	key=input("请输入对应选择:")

	if key=="1":
		print("="*12,"学员信息浏览","="*12)
		stuinfo.findAll()
		input("按回车键继续")
	elif key=="2":
		print("="*12,"学员信息添加","="*12)
		stu={}
		stu['name']=input("请输入添加学员姓名:")
		stu['age']=input("请输入添加学员年龄:")
		stu['classid']=input("请输入添加学员班级:")
		stuinfo.insert(stu['name'],stu['age'],stu['classid'])
		stuinfo.findAll()
		input("按回车键继续:")
	elif key=="3":
		print("="*12,"学员信息删除","="*12)
		id=input("请输入要删除学员信息的id:")
		stuinfo.delete(id)
		stuinfo.findAll()
		input("按回车键继续:")

	elif key=="4":
		print("="*12,"退出系统","="*12)
		break
	else:
		print("=======无效的键盘输入==========")





		




